home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / libintl.h < prev    next >
Encoding:
C/C++ Source or Header  |  2006-05-08  |  4.5 KB  |  123 lines

  1. /* Message catalogs for internationalization.
  2.    Copyright (C) 1995-1999, 2000-2002, 2004 Free Software Foundation, Inc.
  3.    This file is part of the GNU C Library.
  4.    This file is derived from the file libgettext.h in the GNU gettext package.
  5.  
  6.    The GNU C Library is free software; you can redistribute it and/or
  7.    modify it under the terms of the GNU Lesser General Public
  8.    License as published by the Free Software Foundation; either
  9.    version 2.1 of the License, or (at your option) any later version.
  10.  
  11.    The GNU C Library is distributed in the hope that it will be useful,
  12.    but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  14.    Lesser General Public License for more details.
  15.  
  16.    You should have received a copy of the GNU Lesser General Public
  17.    License along with the GNU C Library; if not, write to the Free
  18.    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
  19.    02111-1307 USA.  */
  20.  
  21. #ifndef _LIBINTL_H
  22. #define _LIBINTL_H    1
  23.  
  24. #include <features.h>
  25.  
  26. /* We define an additional symbol to signal that we use the GNU
  27.    implementation of gettext.  */
  28. #define __USE_GNU_GETTEXT 1
  29.  
  30. /* Provide information about the supported file formats.  Returns the
  31.    maximum minor revision number supported for a given major revision.  */
  32. #define __GNU_GETTEXT_SUPPORTED_REVISION(major) \
  33.   ((major) == 0 ? 1 : -1)
  34.  
  35. __BEGIN_DECLS
  36.  
  37. /* Look up MSGID in the current default message catalog for the current
  38.    LC_MESSAGES locale.  If not found, returns MSGID itself (the default
  39.    text).  */
  40. extern char *gettext (__const char *__msgid) __THROW;
  41.  
  42. /* Look up MSGID in the DOMAINNAME message catalog for the current
  43.    LC_MESSAGES locale.  */
  44. extern char *dgettext (__const char *__domainname, __const char *__msgid)
  45.      __THROW;
  46. extern char *__dgettext (__const char *__domainname, __const char *__msgid)
  47.      __THROW __attribute_format_arg__ (2);
  48.  
  49. /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
  50.    locale.  */
  51. extern char *dcgettext (__const char *__domainname,
  52.             __const char *__msgid, int __category) __THROW;
  53. extern char *__dcgettext (__const char *__domainname,
  54.               __const char *__msgid, int __category)
  55.      __THROW __attribute_format_arg__ (2);
  56.  
  57.  
  58. /* Similar to `gettext' but select the plural form corresponding to the
  59.    number N.  */
  60. extern char *ngettext (__const char *__msgid1, __const char *__msgid2,
  61.                unsigned long int __n)
  62.      __THROW __attribute_format_arg__ (1) __attribute_format_arg__ (2);
  63.  
  64. /* Similar to `dgettext' but select the plural form corresponding to the
  65.    number N.  */
  66. extern char *dngettext (__const char *__domainname, __const char *__msgid1,
  67.             __const char *__msgid2, unsigned long int __n)
  68.      __THROW __attribute_format_arg__ (2) __attribute_format_arg__ (3);
  69.  
  70. /* Similar to `dcgettext' but select the plural form corresponding to the
  71.    number N.  */
  72. extern char *dcngettext (__const char *__domainname, __const char *__msgid1,
  73.              __const char *__msgid2, unsigned long int __n,
  74.              int __category)
  75.      __THROW __attribute_format_arg__ (2) __attribute_format_arg__ (3);
  76.  
  77.  
  78. /* Set the current default message catalog to DOMAINNAME.
  79.    If DOMAINNAME is null, return the current default.
  80.    If DOMAINNAME is "", reset to the default of "messages".  */
  81. extern char *textdomain (__const char *__domainname) __THROW;
  82.  
  83. /* Specify that the DOMAINNAME message catalog will be found
  84.    in DIRNAME rather than in the system locale data base.  */
  85. extern char *bindtextdomain (__const char *__domainname,
  86.                  __const char *__dirname) __THROW;
  87.  
  88. /* Specify the character encoding in which the messages from the
  89.    DOMAINNAME message catalog will be returned.  */
  90. extern char *bind_textdomain_codeset (__const char *__domainname,
  91.                       __const char *__codeset) __THROW;
  92.  
  93.  
  94. /* Optimized version of the function above.  */
  95. #if defined __OPTIMIZE__ && !defined __cplusplus
  96.  
  97. /* We need NULL for `gettext'.  */
  98. # define __need_NULL
  99. # include <stddef.h>
  100.  
  101. /* We need LC_MESSAGES for `dgettext'.  */
  102. # include <locale.h>
  103.  
  104. /* These must be macros.  Inlined functions are useless because the
  105.    `__builtin_constant_p' predicate in dcgettext would always return
  106.    false.  */
  107.  
  108. # define gettext(msgid) dgettext (NULL, msgid)
  109.  
  110. # define dgettext(domainname, msgid) \
  111.   dcgettext (domainname, msgid, LC_MESSAGES)
  112.  
  113. # define ngettext(msgid1, msgid2, n) dngettext (NULL, msgid1, msgid2, n)
  114.  
  115. # define dngettext(domainname, msgid1, msgid2, n) \
  116.   dcngettext (domainname, msgid1, msgid2, n, LC_MESSAGES)
  117.  
  118. #endif    /* Optimizing.  */
  119.  
  120. __END_DECLS
  121.  
  122. #endif /* libintl.h */
  123.